package com.meilai.project.service.business.customer;

import com.meilai.project.dto.business.customer.CustomerEditDTO;
import com.meilai.project.entity.business.customer.CustomerEditFlow;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author xhy
 * @since 2022-01-13
 */
public interface CustomerEditFlowService extends IService<CustomerEditFlow> {

    /**
     * 保存到草稿箱
     *
     * @param dto
     * @param flag
     * @param wfData_id
     * @return
     */
    Boolean saveDrafts(CustomerEditDTO dto, boolean flag, Long wfData_id);

    /**
     * 保存并开启流程
     *
     * @param dto
     * @param wfData_id
     * @return
     */
    Boolean saveAndStartFlow(CustomerEditDTO dto, Long wfData_id);


    /**
     * 审核方法
     *
     * @param dto
     * @param isReturn
     * @param opinion
     * @return
     */
    Boolean check(CustomerEditDTO dto, Boolean isReturn, String opinion);

    /**
     * 删除流程
     *
     * @param flow_id
     * @return
     */
    Boolean remove(Long flow_id, Long wf_data_id);

    /**
     * 彻底删除方法
     *
     * @param flow_id
     * @param wf_data_id
     * @return
     */
    Boolean actualDelete(Long flow_id, Long wf_data_id);


    /**
     * 根据流程ID查询Dto
     *
     * @param flow_id
     * @return
     */
    CustomerEditDTO getDtoById(Long flow_id);
}
